#pragma once
#include "ckDataSourceManager.h"

namespace ck
{
	class DataSource;

	class DataSourceManagerMySQL : public DataSourceManager
	{
	public:
		DataSourceManagerMySQL();
		virtual ~DataSourceManagerMySQL();

	public:
		virtual	void	BuildCreateDataSourceTableSQL(char* szSQL, size_t nSize);
		virtual void	BuildGetDataSourceSQL(char* szSQL, size_t nSize, z_uint32 nProjCode);
		virtual	void	BuildInsertDataSourceSQL(char* szSQL, size_t nSize, z_uint32 nProjCode, DataSource* pDataSource);
		virtual	void	BuildRemoveDataSourceSQL(char* szSQL, size_t nSize, z_uint32 nProjCode, const char* szSourceName);

		virtual	void	BuildInsertDatasetSQL(char* szSQL, size_t nSize, z_uint32 nSourceCode, const char* szDatasetName, ckDataProductType nProductTypetype);
		virtual	void	BuildGetDataSourceCodeSQL(char* szSQL, size_t nSize, z_uint32 nProjCode, const char* szSourceName);

		virtual void	BuildGetDatasetsSQL(char* szSQL, size_t nSize, z_uint32 nSourceCode);
		virtual	void	BuildRemoveDatasetSQL(char* szSQL, size_t nSize, z_uint32 nSourceCode, const char* szDatasetName);
		virtual	void	BuildRemoveDatasetsSQL(char* szSQL, size_t nSize, z_uint32 nSourceCode);
	};
}



